<?php

return [

    /*
    |--------------------------------------------------------------------------
    | 身份验证默认值
    |--------------------------------------------------------------------------
    |
    | 此选项控制应用程序的默认身份验证“保护”和密码重置选项。
    | 您可以根据需要更改这些默认值，但是对于大多数应用程序来说，它们是一个完美的开始。
    */

    'defaults' => [
        'guard' => 'web',
        'passwords' => 'users',
    ],

    /*
    |--------------------------------------------------------------------------
    | 保护验证
    |--------------------------------------------------------------------------
    |
    | 接下来，您可以为应用程序定义每个身份验证保护。
    | 当然，这里已经为您定义了一个很棒的默认配置，该配置使用会话存储和Eloquent用户提供程序。
    |
    | 所有身份验证驱动程序都有一个用户提供程序.
    | 这定义了如何从数据库或此应用程序用来持久存储用户数据的其他存储机制中实际检索用户.
    | 支持: "session", "token"
    |
    */

    'guards' => [
        'web' => [
            'driver' => 'session',
            'provider' => 'users',
        ],

        'api' => [
            'driver' => 'token',
            'provider' => 'users',
            'hash' => false,
        ],
    ],

    /*
    |--------------------------------------------------------------------------
    | 用户提供者
    |--------------------------------------------------------------------------
    |
    | 所有身份验证驱动程序都有一个用户提供程序.
    | 这定义了如何从数据库或此应用程序用来持久存储用户数据的其他存储机制中实际检索用户。
    |
    |
    | 如果您有多个用户表或模型，则可以配置代表每个模型/表的多个源。
    | 然后，可以将这些源分配给您定义的任何其他身份验证保护。
    |
    |
    | 支持: "database", "eloquent"
    |
    */

    'providers' => [
        'users' => [
            'driver' => 'eloquent',
            'model' => App\Models\User::class,
        ],

        // 'users' => [
        //     'driver' => 'database',
        //     'table' => 'users',
        // ],
    ],

    /*
    |--------------------------------------------------------------------------
    | 重设密码
    |--------------------------------------------------------------------------
    |
    | 如果应用程序中有多个用户表或模型，并且您想要基于特定的用户类型进行单独的密码重置设置，则可以指定多个密码重置配置。
    |
    | 到期时间是重置令牌应被视为有效的分钟数。
    | 此安全功能使令牌的寿命很短，因此可以减少猜测的时间。您可以根据需要更改此设置.
    */

    'passwords' => [
        'users' => [
            'provider' => 'users',
            'table' => 'password_resets',
            'expire' => 60,
            'throttle' => 60,
        ],
    ],

    /*
    |--------------------------------------------------------------------------
    | 密码确认超时
    |--------------------------------------------------------------------------
    |
    | 在这里，您可以定义密码确认超时之前的秒数，并通过确认屏幕提示用户重新输入密码。
    | 默认情况下，超时持续三小时。
    */

    'password_timeout' => 10800,

];
